﻿class Solution
{
public:
	int findLongestChain(vector<vector<int>>&pairs)
	{
		sort(pairs.begin(), pairs.end()); // 排序 
		int n = pairs.size();
		vector<int> dp(n, 1); // 创建 dp数组，顺便初始化 
		int ret = 1; // 记录最⼤值 
		for (int i = 1; i < n; i++)
		{
			for (int j = 0; j < i; j++)
			{
				// 找出所有情况下的最⼤值 
				if (pairs[j][1] < pairs[i][0]) dp[i] = max(dp[i], dp[j] + 1);
			}
			ret = max(ret, dp[i]); // 更新最⼤值 
		}
		return dp[n - 1];
	}
};